package 接口.匿名内部类;

import 接口.upperCastExample.Destination;

public class Parcel9 {
	public Destination destination(final String dest) {
		// 如果建立了一个匿名内部类，并且
		// 并且你还想用一个在匿名内部类外面定义的对象，name编译器会要求参数为final（例如 dest）;
		return new Destination() {
			{
				// 可以利用 实例初始化达到构造器的效果
				System.out.println("inside instance initializer");
			}
			private String label = dest;

			@Override
			public String readLabel() {
				return label;
			}
		};
	}

	public static void main(String[] args) {
		Parcel9 parcel9 = new Parcel9();
		Destination tasmania = parcel9.destination("tasmania");
	}
}
